// 全局样式变量
:root {
  // 主题色
  --primary-color: #409EFF;
  --success-color: #67C23A;
  --warning-color: #E6A23C;
  --danger-color: #F56C6C;
  --info-color: #909399;

  // 文字颜色
  --text-color-primary: #303133;
  --text-color-regular: #606266;
  --text-color-secondary: #909399;
  --text-color-placeholder: #C0C4CC;

  // 边框颜色
  --border-color-base: #DCDFE6;
  --border-color-light: #E4E7ED;
  --border-color-lighter: #EBEEF5;
  --border-color-extra-light: #F2F6FC;

  // 背景色
  --background-color-base: #F5F7FA;
  --background-color-page: #F0F2F5;

  // 阴影
  --box-shadow-base: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
  --box-shadow-dark: 0 2px 12px 0 rgba(0, 0, 0, 0.2);

  // 圆角
  --border-radius-base: 8px;
  --border-radius-small: 4px;
}

// 全局重置
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  height: 100%;
  font-family: 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
}

#app {
  height: 100%;
}

// 通用类
.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

// Element Plus样式覆盖
.el-card {
  border-radius: var(--border-radius-base);
  box-shadow: var(--box-shadow-base);
}

.el-button {
  border-radius: var(--border-radius-small);
}

.el-table {
  border-radius: var(--border-radius-base);
}

// NProgress样式覆盖
#nprogress .bar {
  background: var(--primary-color) !important;
}

#nprogress .peg {
  box-shadow: 0 0 10px var(--primary-color), 0 0 5px var(--primary-color) !important;
}

#nprogress .spinner-icon {
  border-top-color: var(--primary-color) !important;
  border-left-color: var(--primary-color) !important;
}